package cn.kgm.user.server.struct;

import cn.kgm.user.dto.dto.UserTypeDealerSaveDTO;
import cn.kgm.user.dto.dto.UserTypeDealerUpdateDTO;
import cn.kgm.user.dto.entity.UserTypeDealer;
import cn.kgm.user.dto.query.UserTypeDealerPageQuery;
import cn.kgm.user.dto.vo.UserTypeDealerVO;
import org.mapstruct.Builder;
import org.mapstruct.Mapper;
import org.mapstruct.factory.Mappers;

/**
 * # 技术改变自己 #
 * toC客户
 * @author Kappi
 * @date   2024-04-13 16:44:52
 */
@Mapper(builder = @Builder(disableBuilder = true))
public interface UserTypeDealerMappers {
    UserTypeDealerMappers INSTANCE = Mappers.getMapper(UserTypeDealerMappers.class);

    /**
     * 将 UserTypeDealerSaveDTO 映射成 UserTypeDealer 对象
     *
     * @param source 源对象
     * @return UserTypeDealer
     */
    UserTypeDealer mapToEntity(UserTypeDealerSaveDTO source);

    /**
     * 将 UserTypeDealerUpdateDTO 映射成 UserTypeDealer 对象
     *
     * @param source 源对象
     * @return UserTypeDealer
     */
    UserTypeDealer mapToEntity(UserTypeDealerUpdateDTO source);

    /**
     * UserTypeDealerPageQuery 映射成 UserTypeDealer 对象
     *
     * @param source 源对象
     * @return UserTypeDealer
     */
        UserTypeDealer mapToEntity(UserTypeDealerPageQuery source);

    /**
     * UserTypeDealer 映射成 UserTypeDealerVO 对象
     *
     * @param source 源对象
     * @return UserTypeDealerVO
     */
    UserTypeDealerVO mapToEntity(UserTypeDealer source);

    /**
     * UserTypeDealerVO 映射成 UserTypeDealer 对象
     *
     * @param source 源对象
     * @return UserTypeDealerVO
     */
    UserTypeDealer mapToEntity(UserTypeDealerVO source);

}
